home *** CD-ROM | disk | FTP | other *** search
/ Tech Arsenal 1 / Tech Arsenal (Arsenal Computer).ISO / tek-05 / lanutsrc.zip / LANUTILS.DOC < prev    next >
Text File  |  1991-10-23  |  34KB  |  878 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.                   LANutils Version 2.01 (2/91)
  8.               
  9.            Essential Tools for your LANtastic network.
  10.                         
  11.                All programs and documentation are
  12.  
  13.    Copyright 1990,1991 by Jon Marbry.  All rights reserved.
  14.                     
  15.                     
  16.  
  17.  
  18.                        --- INTRODUCTION ---
  19.  
  20. I'll take LANtastic over the networks that come in expensive, big
  21. red  boxes  any day. It's fast , flexible, easy to  install, and
  22. easy  on  system resources.  It can be a bit tricky to set up a
  23. turnkey LANtastic network for novice users, though.  Not every user 
  24. on an  office network needs or  even  wants to use  the tremendous
  25. amount  of control that LANtastic  gives over every aspect  of
  26. operation. Managing the details of  print and  mail queueing, server
  27. selection, printer selection  etc. is a frightening, unfamiliar  job
  28. for someone who just wants to run their WordStar or Lotus 123. What
  29. is needed, then is a  way  to minimize  what users  need to know
  30. about the operation  of  the network in order to get their own
  31. computer to cooperate.
  32.  
  33. The SoftMagic LANutils are tools that I developed a couple of years
  34. ago when I was selling and installing lots of LANtastic Networks for
  35. a living. They made my job just a little easier -- hopefully they
  36. can do the same for you.
  37.  
  38.  
  39.                          -------------------
  40.                          | IMPORTANT NOTE: | 
  41.                          ------------------- 
  42.  
  43. As of this version (2.01, March 1991) SoftMagic is officially out of
  44. business -- I'm doing product development for Artisoft now, and will
  45. no longer charge for LANutils registration.  Any registration fees
  46. that I receive after March 1, 1991 will be returned. 
  47.  
  48. You are free to use and distribute these programs without charge, and
  49. I could definitely use your help in replacing all those old (v1.5 or
  50. worse!) versions of the LANutils that are floating around the
  51. electronic community.  If you see an old copy on a BBS, please upload
  52. this version or let the sysop know that a new version is available on
  53. Artisoft's BBS at (602) 293-0065 or on Compuserve (GO ARTISOFT). 
  54.  
  55. The programs in this package are the latest, completely functional
  56. versions, without the (only slightly obnoxious) "Shareware" message
  57. that graced previously distributed versions.  
  58.  
  59.  
  60.                         -----------------
  61.                         |  SOURCE CODE! |
  62.                         -----------------
  63.  
  64.  
  65. Complete Microsoft C and Assembler source code for the LANutils is now
  66. ***TOTALLY FREE***.  Look for it in Artisoft's Compuserve forum 
  67. (GO ARTISOFT) or on the Arti-Facts BBS.
  68. All LANutils code and support files are included. To build the LANutils
  69. from source, you need
  70.  
  71.                           - Microsoft C 4.0 or later 
  72.                           - Microsoft MASM 5.1 or compatible assembler
  73.                           - MS compatible LINK utility
  74.                           - EXE2BIN utility
  75.                           - EXEMOD utility
  76.                           - NMAKE or compatible MAKE utility
  77.  
  78.  
  79. The programs included in the LANutils package are: 
  80.  
  81.         LOGIN     - allows you to log in to multiple servers 
  82.                     with a single command. Adds system and
  83.                     user "login script" capability.        
  84.                     
  85.         LOGOUT    - log out of one or more servers with a single
  86.                     command.
  87.                     
  88.         WAITFOR   - pause until a given set of servers are online.
  89.         
  90.         FASTNET   - processes entire files of "NET" commands at
  91.                     once, at .
  92.         
  93.         MSET     - allows you to set variables in DOS's "master"
  94.                    environment from login script files and other
  95.                    programs run from secondary command shells.
  96.         
  97.         REBOOT   - causes your computer to reboot as though 
  98.                    Ctrl-Alt-Del had been pressed.                    
  99.                     
  100.         USERLIST  - gives you a neatly organized list of who's 
  101.                     logged in to what server.                                        
  102.  
  103.     INTERCOM   - INTERCOM is a very compact pop-up station
  104.                  to station communication program.    
  105.  
  106.     SYSTEM       - The SYSTEM utility gives your batch files
  107.              the ability to make decisions based on the
  108.              computer's hardware and software configuration.
  109.              
  110.     FU         - FindUser reports the machine names at which
  111.              a given user is logged in.
  112.                   
  113.     SU         - The SendUser utility allows you to send 
  114.                  network messages to users rather than nodes.
  115.                  
  116.     DELAY      - With DELAY, you can cause your batch files to
  117.               pause for a specified period of time.             
  118.                  
  119.     LUSETUP    - LUSETUP allows you to change the screen color
  120.                  and for MESSAGE and INTERCOM and the activation
  121.                  key for INTERCOM and Artisoft's LANPUP.
  122.                          
  123.         MESSAGE    - an improved version of MESSAGE, a pop-up,
  124.                  receive only message handler is also included.
  125.  
  126.         
  127.             --- HARDWARE AND SOFTWARE REQUIREMENTS ---
  128.  
  129. To use the LANutils, you must have a PC, AT, PS/2 or compatible
  130. computer running MS or PC-DOS 3.1 or greater and the LANtastic
  131. Network Operating System (LANOS) version 2.53 or greater.  
  132.  
  133. Special Note for 4DOS users:  
  134.  
  135. If you need to change environment variables from your login
  136. scripts, you must start 4DOS using the /M command line option to
  137. specifiy environment size instead of the normal /E. For example, 
  138.  
  139. SHELL=C:\4DOS.COM /S:B /M:512 /P
  140.  
  141. The /M option keeps 4DOS from swapping the master environment out
  142. of memory every time it loads a program.
  143.  
  144.  
  145.                   *** DISCLAIMER OF WARRANTY ***
  146.  
  147. THESE PROGRAMS ARE PROVIDED ON AN AS-IS BASIS. SOFTMAGIC, INC. AND
  148. BUSINESS NETWORKS OF AMERICA MAKE NO WARRANTY, EXPRESS OR IMPLIED,
  149. AS TO PERFORMANCE, MERCHANTABILITY OR  FITNESS FOR A PARTICULAR
  150. PURPOSE. IN NO EVENT WILL SOFTMAGIC, INC. OR BUSINESS NETWORKS OF
  151. AMERICA BE HELD LIABLE FOR ANY DAMAGES, INCLUDING BUT NOT LIMITED
  152. TO LOSS OF USE, LOST REVENUE, SPECIAL, CONSEQUENTIAL, INDIRECT OR
  153. SIMILAR DAMAGES, EVEN IF SOFTMAGIC, INC. OR AN AGENT OF SOFTMAGIC,
  154. INC. HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. IN NO
  155. EVENT SHALL SOFTMAGIC, INC.'S LIABILITY FOR ANY DAMAGES EVER EXCEED
  156. THE PRICE PAID FOR THE SOFTWARE, REGARDLESS OF THE FORM OF THE 
  157. CLAIM.  
  158.        
  159.                          --- LOGIN ---
  160.  
  161. The LOGIN utility allows you to log onto multiple servers with  a 
  162. single command.  LOGIN is really handy for setting up boot disks 
  163. on floppy-only workstations, since you don't have the overhead of 
  164. loading NET over and over for each login. 
  165.  
  166. In addition, LOGIN provides a "login script" both for servers and 
  167. for  individual  users.  LOGIN  will  automatically  redirect   a 
  168. specified  drive to the server's network directory and execute  a 
  169. batch file keyed to the user's name.   
  170. The syntax for LOGIN is:
  171.  
  172. LOGIN <server list> <user id list> <password list> [/OPTIONS]
  173.  
  174. The  server  list is a list of file servers to  be  logged  into, 
  175. separated by commas.  The list is processed sequentially, left to 
  176. right.  An  asterisk  (*)  in the server  list  field  means  all 
  177. currently available (but not logged in) servers.
  178.  
  179. The  user id list is a list of user ids, one to a server.   Again 
  180. the  list  is scanned from left to right.  If  more  servers  are 
  181. specified  that  ids, the id list will be reused  in  a  circular 
  182. fashion.   This  makes  it easy for you to  log  in  to  multiple 
  183. servers under the same user id.
  184.  
  185. The  password list works the same way as the user id list.  If  a 
  186. question mark (?) is entered as the password for a server,  LOGIN 
  187. will  prompt the user for the password at an  appropriate  point. 
  188. The  password  list  will also be recycled if  more  servers  and 
  189. userids  are  specified than passwords.  If you've got  the  same 
  190. user ID and password on all the servers on your net, you can  log 
  191. in everywhere with the command.
  192.  
  193. LOGIN * USERNAME ?
  194.  
  195. LOGIN  will ask you once for your password, then it will log  you 
  196. on to all the available servers on the net.
  197.  
  198. If  you  omit  any  of the  parameters,  LOGIN  will  prompt  you 
  199. accordingly. For example, the command
  200.  
  201. LOGIN
  202.  
  203. results  in the following exchange: (Text in all caps entered  by 
  204. user)
  205.  
  206. Server: SERVER1,SERVER2
  207. Userid: MANAGER
  208. Password: PASS  (Not really a good idea for a password, of course!)
  209.  
  210.  
  211.                       COMMAND LINE OPTIONS
  212.  
  213. /NODUPLICATES
  214.  
  215. LOGIN's default behavior on encountering a duplicate login  error 
  216. is to log the user out of that server and retry the login without 
  217. saying anything to the user.
  218.  
  219. If  the /NODUPLICATES option is specified, attempts to log in  to 
  220. the same server more than once will be reported as errors.
  221.  
  222. /NOSCRIPT
  223.  
  224. The /NOSCRIPT option allows you to log in without invoking either 
  225. the system or user login script facilities.  This option is  only 
  226. necessary  when the specified servers HAVE login scripts and  you 
  227. want to bypass them.  LOGIN is smart enough not to try to execute 
  228. login scripts on servers that don't have them set up.
  229.  
  230. /SUPPRESS
  231.  
  232. The  /SUPPRESS option prevents LOGIN from displaying ANY  warning 
  233. or  error messages.  If an error does occur however,  LOGIN  will 
  234. still terminate with a non-zero return code, so your batch  files 
  235. can detect any problems.
  236.  
  237. /HELP
  238.  
  239. /HELP displays a brief instruction summary and a list of  command 
  240. line options. If the /HELP option is specified, all other command 
  241. line input is ignored and no action (i.e. logging in) is taken.
  242.  
  243.  
  244.                     THE LOGIN SCRIPT FACILITY
  245.  
  246. A  login script is simply a batch file to be executed whenever  a 
  247. user logs in to a server.  LOGIN supports two types of scripts, a 
  248. system  login  script,  executed by everyone who  logs  into  the 
  249. server,  and  a user specific login script, with commands  to  be 
  250. executed only when a particular user logs in. 
  251.  
  252. With  the login script capability, when a user logs in,  you  can 
  253. set   his  PROMPT,  COMSPEC  and  other  environment   variables, 
  254. automatically configure a set of network devices for him, print a 
  255. welcoming message, display news bulletins, or even log him  right 
  256. back out.
  257.  
  258. LOGIN  expects  all  its login script files to  be  kept  in  the 
  259. server's  network directory, LANTASTI.NET (the \. device  in  the 
  260. NET  menu).  To create a system login script for a  server,  just 
  261. put  the  commands  you  want executed in  a  batch  file  called 
  262. $SYSTEM.BAT  in  the  network directory.  Similarly,  user  login 
  263. scripts are just batch files with the same names as their  users.  
  264. For example user BOB 's login script would be called BOB.BAT.  
  265.  
  266. Login scripts can contain any command that you'd normally use  in 
  267. a batch file. The node name of the user's machine (the name given 
  268. in the REDIR command) is given to both the system and user script 
  269. files as the first parameter, %1, so that you can check it and do 
  270. different things for different stations (like changing COMSPEC on 
  271. floppy based stations to use a faster network disk). A couple  of 
  272. warnings, however: If you use external (disk based) commands,  be 
  273. sure that the user's computer has a path to them. It's easiest to 
  274. do  all your redirections first, set up proper paths,  then  call 
  275. external  commands. 
  276.  
  277. To set environment variables from login scripts you must use the
  278. included MSET utility. MSET works the same way as the DOS SET
  279. command, but it modifies the master copy of the environment, no
  280. matter how many levels deep in shells and menus you may be. For
  281. example, to set the path in a login script, use the command
  282.  
  283. MSET PATH=F:\;F:\UTILITY;F:\LANTASTI
  284.  
  285. A  Brief  Technical  Note:  The login script  facility  works  by
  286. temporarily  redirecting  drive B: on the user's station  to  the
  287. server's  network directory. The redirection is always  cancelled
  288. after the login script is done. I chose B: because most  machines
  289. don't  need to use the B: floppy (even if they really  have  one)
  290. during  bootup.   If  you normally redirect the  B:  drive  to  a
  291. network  drive however, you will have to wait until  after  LOGIN
  292. has executed to redirect it.
  293.  
  294.           
  295.                         --- LOGOUT ---          
  296.                         
  297. LOGOUT allows you to log out of one or more servers with a single 
  298. command. Its syntax is
  299.  
  300.         LOGOUT <server list> [/HELP]
  301.  
  302. The server list is a list of servers separated by commas,  spaces 
  303. or plus signs.  An asterisk '*' is used to specify all  currently 
  304. active servers, so the command
  305.  
  306.         LOGOUT *
  307.                 
  308. will log you out of all the servers that you are currently logged 
  309. into, as will simply entering the LOGOUT command with no arguments.
  310.  
  311. The  only available command line option is the /HELP option.   As 
  312. with  LOGIN, /HELP causes a brief instruction summary and a  list 
  313. of  available  options to be displayed. If  /HELP  is  specified, 
  314. LOGOUT  will take no other action -- it will not log you  out  of 
  315. any servers.
  316.  
  317.  
  318.                         --- WAITFOR ---
  319.                         
  320. OK, this is the situation -- you've set up a small office, with 6 
  321. or  7 computers connected by LANtastic.  They're turned off  each 
  322. night  after work and turned on in the morning.  It's  a  totally 
  323. turnkey system, so the network is started and everyone is  logged 
  324. in automatically.  So far so good.        
  325.                 
  326. Now  here's the problem.  There's no way you can turn 6 or 7  (or 
  327. 10 or 12) computers on at exactly the same time.  Unless you  put 
  328. a
  329.  
  330.         PAUSE "Press any key when all the machines are ready..."
  331.  
  332. statement in the AUTOEXEC file, the automatic logins stand a good 
  333. chance of failing because of missed timing.
  334.  
  335. The solution? 
  336.  
  337.         WAITFOR <list of servers> [/OPTIONS]
  338.         
  339. WAITFOR will cause the computer to pause until all the servers in 
  340. the given list are on line, or until the escape key is pressed or 
  341. optionally until a specified time-out interval is exceeded.        
  342.         
  343.          
  344.                       COMMAND LINE OPTIONS
  345.  
  346. /TIME=[1..999 seconds] (default: no timeout)
  347.  
  348. The  /TIME  option lets you set the maximum length of  time  that  
  349. WAITFOR will sit around and wait for all the specified servers to 
  350. come on line.  If /TIME is not set, WAITFOR will wait forever.
  351.  
  352. /HELP
  353.  
  354. /HELP displays a brief instruction summary and a list of  command 
  355. line options. If the /HELP option is specified, all other command 
  356. line input is ignored and no other action is taken.
  357.  
  358.  
  359.                          --- FASTNET ---
  360.  
  361. Sometimes it seems to take forever for a batch file of "NET  USE" 
  362. commands  to  execute, especially on floppy  based  workstations.  
  363. The  poor computer not only has to execute the commands, it  also 
  364. has  to  reload  the 16K NET utility for  each  command.  FASTNET 
  365. speeds  things  up  by  processing a whole  file  full  of  "NET" 
  366. commands  at  once.  You can use the batch interpreter  to  debug 
  367. your  network setup, then when you're done, just use the name  of 
  368. your batch file as a parameter to FASTNET and see how much faster 
  369. it runs.
  370.  
  371. FASTNET handles the following NET commands, exactly as  described 
  372. in your LANtastic documentation:
  373.  
  374. NET USE D: \\Server_name
  375. NET USE D: \\Server_name\Path\...\Path
  376. NET USE LPTn: \\Server_name\@Device                
  377. NET UNUSE D:
  378. NET CLOCK \\Server_name
  379. NET LPT [COMBINE,FLUSH,SEPARATE]
  380. NET LPT TIMEOUT t                           
  381. NET QUEUE [START,STOP,HALT,PAUSE,SINGLE,RESTART] \\Server_name
  382.  
  383. If  FASTNET doesn't directly support a command (such as NET  SHOW 
  384. or NET POSTBOX or other batch commands) it will pass it on to the 
  385. command  processor.   In  this way, FASTNET can  handle  all  NET 
  386. commands  and  all  batch file commands  except  those  involving 
  387. branching  within  the  batch file  and  changes  to  environment 
  388. variables.  If  an error occurs, FASTNET returns the  same  error 
  389. messages that NET does, and returns with a non zero error code.
  390.  
  391. FASTNET's syntax is:
  392.  
  393.         FASTNET <file name> [/OPTIONS]                         
  394.         
  395. The filename can be any valid DOS file name. If no extension is
  396. given, an extension of .BAT is assumed.        
  397.                          
  398.  
  399.                       COMMAND LINE OPTIONS
  400. /STOP
  401.  
  402. Normally, if an error occurs, FASTNET will report it and continue  
  403. processing.   If you use the /STOP option, however, FASTNET  will 
  404. immediately terminate with an appropriate return code if any kind 
  405. of error occurs.  
  406.  
  407. /SUPPRESS
  408.  
  409. The /SUPPRESS option prevents FASTNET from displaying ANY warning 
  410. or error messages.  If an error does occur however, FASTNET  will 
  411. still terminate with a non-zero return code, so your batch  files 
  412. can detect any problems.
  413.  
  414. /HELP
  415.  
  416. /HELP displays a brief instruction summary and a list of  command 
  417. line options. If the /HELP option is specified, all other command 
  418. line input is ignored and no other action is taken.
  419.  
  420.  
  421.                         --- MESSAGE ---
  422.                         
  423. The MESSAGE utility is an alternative to LANtastic's built in pop
  424. up message receiver.  Like the built in message handler, MESSAGE
  425. causes messages sent to your machine  with  "NET  SEND" to pop up
  426. on the bottom  lines  of  your screen. Unlike the built in
  427. handler, messages thus popped up will stay on your screen until
  428. you tell them, via the escape key, to leave.  The message display
  429. also includes information on who sent you the message and the time
  430. at which it was sent for your reference.  If you're away from your
  431. desk a lot, MESSAGE will probably work better for you than
  432. LANtastic's message handler, since your messages won't vanish
  433. after a certain interval, never to be seen again. 
  434.  
  435. MESSAGE will also pop up even over graphics programs (by popular
  436. demand). Be warned however, that to save memory, it doesn't save
  437. the underlying screen. You get your message, but you must ask your
  438. application to redraw the screen. Also, as is the case with quite
  439. a few resident programs, MESSAGE doesn't always behave well with
  440. Windows 3.0. 
  441.  
  442. To install the MESSAGE utility, enter the command
  443.  
  444.         MESSAGE
  445.  
  446. The computer will display the installation message 
  447.  
  448.  
  449. SoftMagic Resident Message Handler Version 1.5 for LANtastic
  450.   Copyright 1990 by SoftMagic, Inc.  All rights reserved.
  451.         LANtastic is a trademark of Artisoft, Inc.
  452.  
  453. MESSAGE has no parameters or command line  options and it's 
  454. smart enough not to let you install more than one copy at
  455. a time. Note that if you chose to use MESSAGE, you can disable
  456. Artisoft's pop-up function by entering the command
  457.  
  458.     NET MESSAGE/DISABLE POP
  459.  
  460. at the DOS prompt or in a batch file.
  461.  
  462.  
  463.                           --- REBOOT ---
  464.                           
  465. REBOOT is a small program that causes your computer to execute                          
  466. a "hard" reboot -- a restart that clears everything out of memory
  467. and runs your computer's power-on diagnostics.  
  468.  
  469. It can be handy for all sorts of things, from providing a foolproof
  470. way of resetting communications hardware from a batch file to 
  471. keeping people out of places where they don't belong. I've even
  472. got the habit of typing REBOOT instead of Ctrl-Alt-Del whenever
  473. I need to reboot my machine.  
  474.  
  475. To use REBOOT, simply enter 
  476.  
  477. REBOOT
  478.  
  479. at the DOS command line or in a batch file.  There are no options
  480. or command line parameters. You wanna reboot, you gotta reboot!
  481.  
  482.  
  483.                            --- MSET ---
  484.  
  485. The MSET utility allows you to set or change variables in the
  486. "master copy" of the environment -- the one that belongs to the
  487. command processor that was loaded when your computer was first
  488. started.  You use MSET exactly the same way you would use the
  489. SET command:
  490.  
  491.         MSET <variablename>=<value>
  492.         
  493. For example, to set the variable MONITOR to CGA, you would issue
  494. the command 
  495.         
  496.         MSET MONITOR=CGA
  497.         
  498. MSET is provided with the LANutils specifically so that you can 
  499. set master environment variables from login scripts run by the
  500. LOGIN command.  Just substitute MSET for SET in all your login
  501. scripts and the "right" copy of the environment will be altered.
  502.  
  503.                          --- USERLIST ---
  504.                          
  505. I wrote this one after working on a network in a large office -- I
  506. wanted to send someone a message but I didn't know where they were
  507. logged on. So off I went, through the NET menus, checking the
  508. "Display System Activity on Server" screen for all the various
  509. servers that I was logged into.  "There must be an easier way", I
  510. thought.                             
  511.  
  512. USERLIST makes it easy to find people on the network.  It tells
  513. you who's using what machine and who's logged into which servers.
  514. For example, the userlist for our office network as I write looks
  515. like this:
  516.  
  517.         Users on server JON:
  518.           JON on machine JEARL
  519.           JON on machine JON
  520.           CAROLYN on machine CAROLYN
  521.         (3 users)
  522.  
  523.         Users on server CAROLYN:
  524.           CAROLYN on machine CAROLYN
  525.           JON on machine JEARL
  526.           JON on machine JON
  527.         (3 users)
  528.  
  529.         Users on server JEARL:
  530.           JON on machine JEARL
  531.           JON on machine JON
  532.         (2 users)
  533.  
  534. As you can see, there are a few of us still here at midnight.
  535. To get a user list, type
  536.  
  537.         USERLIST <server list> [/HELP]
  538.  
  539. The  only available command line option is the /HELP option.   As
  540. with the rest of the LANutils, /HELP causes a brief instruction
  541. summary and a  list of  available  options to be displayed. If
  542. /HELP  is  specified, USERLIST will take no other action.
  543.  
  544.  
  545.                            --- INTERCOM ---
  546.                            
  547. At only 2.9K, INTERCOM is the smallest two way pop-up communicator
  548. I've come across.  It allows you to pop up a window from virtually
  549. any application, carry on a conversation with one or several other
  550. users, then return immediately to your application.  
  551.  
  552. To load INTERCOM, type
  553.  
  554.     INTERCOM
  555.     
  556. at the DOS prompt (or include it in your AUTOEXEC.BAT file). Once
  557. the program is loaded, to pop up the INTERCOM window, press Alt-I .
  558. (If you need to, you can change the activation key with the
  559. supplied LUSETUP program).  The INTERCOM window looks like this:
  560.  
  561.      +-From: USERNAME ---------------------------------------------+  
  562.      | This is the (incoming) message line.                        |
  563.      +-To:---------------------------------------------------------+
  564.      | USERNAME                                                    |
  565.      +===========================================Press Esc to exit=+  
  566.  
  567. It's really a lot easier to just try out intercom a time or two
  568. than it is to try to explain how to use it. The top line of the
  569. window tells who last sent you a message and the second line
  570. displays the text of the last received message. The third line
  571. holds a prompt that tells you what to type in the fourth line.
  572.  
  573.     If the prompt is "To:: (as in the example above), enter
  574.     the node name of the station to which you're sending.
  575.     
  576.     If the prompt is "Message:", enter the text of your
  577.     message. You can enter up to 65 characters of text.
  578.     
  579. To move between "To:" and "Message:" fields, use the up and down
  580. arrow keys or simply press enter. Once you have filled out both
  581. fields, press enter and your message will be sent.  For example,
  582. to send a message to node MANAGER, you would use the following
  583. commands:
  584.     Alt-I         (to pop up the INTERCOM window)
  585.     MANAGER       (the name of the intended recipient)
  586.     <enter>       (to switch to the "Message:" field)
  587.     HI THERE      (the text of the message)
  588.     <enter>       (to transmit the completed message)
  589.     
  590. At this point, a message has been transmitted and you can either wait
  591. for a reply or press the escape key to return to what you were doing
  592. before you activated INTERCOM.
  593.  
  594. Note that although you can pop up INTERCOM over graphics programs,
  595. when you leave INTERCOM by pressing escape, it does not restore
  596. the graphics screen. This is a result of a compromise made in the
  597. interest of keeping INTERCOM's RAM usage as low as possible. With
  598. most graphics programs, this isn't much of a problem because the
  599. application itself provides an easy way to redraw the screen. For
  600. other applications, it's easiest to handle it the way I do MS
  601. WINDOWS -- I use MARK and RELEASE to unload INTERCOM before
  602. starting.
  603.  
  604.                           --- SYSTEM ---
  605.  
  606. Have you ever accidentally run a copy of 123 on a network station
  607. with the "wrong" type of video hardware?  The same diversity of
  608. hardware options that makes the PC such a useful computer can 
  609. cause all kinds of headaches for network administrators.
  610.  
  611. Typically, efforts to avoid the problem of different, incompatible
  612. hardware on the network turn even the fanciest, most expensive
  613. system into a jungle of batch files.  For example, to solve the
  614. problem above, you must either write a special batch file for each
  615. type of video hardware or teach all your users to start 123 with
  616. the correct driver set, or both.  In any case, you're likely to
  617. wind up with some confused users with blank, black screens. What
  618. a headache!
  619.  
  620. That's where SYSTEM comes in.  SYSTEM lets your batch files ask
  621. the computer about its hardware and software configuration so 
  622. you can easily pick exactly the right program version or driver
  623. set.  To demonstrate, here's a batch file that solves the 123
  624. video driver problem:
  625.  
  626.     ECHO OFF
  627.     REM Batch file to run Lotus 123 with the proper driver set
  628.     REM for the computer's video board.  Note that the driver
  629.     REM sets must have been created in advance using the Lotus
  630.     REM INSTALL program.
  631.  
  632.     REM Check for monochrome or Hercules video
  633.     SYSTEM (VIDEO LT CGA)
  634.     IF ERRORLEVEL 1 GOTO COLOR
  635.     123 MONO
  636.     GOTO END
  637.  
  638.     :COLOR
  639.     REM Check for CGA video
  640.     SYSTEM (VIDEO = CGA)
  641.     IF ERRORLEVEL 1 GOTO EGA
  642.     123 CGA
  643.     GOTO END
  644.  
  645.     :EGA
  646.     REM Check for EGA 
  647.     SYSTEM (VIDEO = EGA)
  648.     IF ERRORLEVEL 1 GOTO VGA
  649.     123 EGA
  650.     GOTO END
  651.  
  652.     :VGA
  653.     SYSTEM (VIDEO = VGA)
  654.     IF (ERRORLEVEL 1) GOTO ERROR
  655.     123 VGA
  656.     GOTO END
  657.  
  658.     :ERROR
  659.     ECHO Error: Unable to determine video adapter type 
  660.  
  661.     :END
  662.  
  663. Think of SYSTEM as an extension to DOS's "IF" command.   You ask
  664. SYSTEM a question with a true/false answer and it places the
  665. result in the DOS ERRORLEVEL variable -- 0 if the answer was true,
  666. 1 if it was false. You can then use "IF ERRORLEVEL" to check the
  667. result.  The batch file above uses this strategy to accomplish two
  668. things: it runs 123 with the correct driver set for each video
  669. board and it detects errors and gives a safe exit route if the
  670. video board type is unknown.
  671.  
  672.  
  673. The formal syntax for SYSTEM is:
  674.  
  675. SYSTEM <expression> | <@filename> [/OPTIONS]
  676.  
  677. An <expression> is a question composed of a system parameter, a
  678. relational operator and a value. For example, the expression
  679.  
  680.     (EXPANDED = 512)
  681.  
  682. in effect asks the question, "Does this computer have exactly 512K
  683. of expanded memory available?" Expressions can be more complex, as
  684. in
  685.  
  686. (EXPANDED GE 512) AND (VIDEO GE EGA) AND (MOUSE = YES)
  687.  
  688. which asks the compound question, "Does this computer have at
  689. least 512K of expanded memory, EGA video or better and a mouse?"
  690. For all you compiler-writing hacker types out there, SYSTEM scans
  691. expressions from right to left and evaluates from left to right,
  692. using no operator precedence. SYSTEM recognizes the following
  693. system parameters:
  694.  
  695. CPU        - the computer's CPU type, 8086/88, 80286 or 80386
  696. FPU        - is the computer equipped with a coprocessor? YES or NO
  697. MEMORY       - the amount of available conventional memory
  698. EXPANDED   - the amount of available expanded memory
  699. EXTENDED   - the amount of installed extended memory
  700. DISK       - the amount of disk space available on the current drive
  701. VIDEO       - the type of video adapter installed on the computer
  702.          MONO, HERCULES, CGA, EGA or VGA
  703. MOUSE      - is an MS compatible mouse driver loaded? YES or NO
  704. DOSVER     - the current MS-DOS version number
  705. LANVER     - the current LANtastic version number
  706.  
  707. Relational operators available are:
  708.  
  709. Operator(s)         Meaning
  710. --------------------------------------------
  711. =,==,EQ             Equality:                  
  712. !=,NE               Inequality:                
  713. GT                  Greater than:              
  714. LT                  Less than:                 
  715. GE                  Greater than or equal to   
  716. LE                  Less than or equal to      
  717. AND,&,&&            AND                        
  718. OR,|,||             OR                         
  719.  
  720. Here's a complex SYSTEM expression that asks if a station is
  721. capable of running large Microsoft Windows programs like Excel and
  722. Word for Windows.
  723.  
  724. (CPU GT 8088) AND (MEMORY GT 450) AND (EXP GT 512) AND (VIDEO GE EGA)
  725.  
  726. A batch file using the expression to run Excel would look something
  727. like this:
  728.  
  729.     ECHO OFF
  730.     REM This batch file runs MS Excel on stations equipped with 
  731.     REM at least an 80286 CPU, at least 450K of free conventional 
  732.     REM memory, at least 512K of EMS memory, and at least EGA
  733.     REM video.
  734.  
  735.     SYSTEM (CPU GT 8088) AND (MEMORY GE 450) AND (EXP GE 512) 
  736.             AND (VIDEO GE EGA)
  737.     IF ERRORLEVEL 1 GOTO ERROR
  738.     EXCEL
  739.     GOTO END
  740.  
  741.     :ERROR      
  742.     ECHO This station is not equipped to run Excel.
  743.     
  744.     :END
  745.  
  746.  
  747. SYSTEM has two command line options that you can use to get extra
  748. information. They are:
  749.  
  750.                               /HELP
  751. The HELP option    displays a brief instruction summary for the SYSTEM
  752. program. You can also get the HELP instructions by typing 
  753. SYSTEM
  754. on the command line with no parameters.
  755.  
  756.                              /REPORT
  757. Use the REPORT option if you'd like to see exactly what hardware
  758. and operating software your computer is equipped with. You'll get
  759. a summary report that looks like this:
  760.  
  761. SYSTEM utility for LANtastic -- Copyright 1990 by SoftMagic, Inc.
  762. All rights reserved.  LANtastic is a trademark of Artisoft, Inc.
  763.  
  764. Current system configuration:
  765. -----------------------------------
  766. Hardware
  767.   CPU: 80286
  768.   FPU: INSTALLED
  769.   Video: EGA
  770.   Mouse: INSTALLED
  771. -----------------------------------
  772. Available Memory
  773.   Conventional: 349K
  774.   Expanded:     880K
  775.   Extended:     0K
  776. -----------------------------------  
  777. Disk space available: 442K
  778. -----------------------------------
  779. Software
  780.   DOS Version:       3.30
  781.   LANtastic Version: 2.57
  782. -----------------------------------  
  783.           
  784.                             --- FU ---
  785.  
  786. The Finduser utility, FU for short, is a quick way to find out where
  787. people are logged on. It's syntax is:
  788.  
  789. FU <user name 1,user name 2,...user name n> [/OPTIONS]
  790.  
  791. User names can be separated by commas or spaces.  The only
  792. available option is /HELP, which displays the condensed version of
  793. these instructions. To give you an idea of what FU does, I'm going
  794. to find out where user Mark is currently logged in.
  795.  
  796.     FU MARK
  797.     MARK is logged in to server \\CAROLYN using machine MARK.
  798.     MARK is logged in to server \\MAIN using machine MARK.
  799.  
  800.                             --- SU ---
  801.                             
  802. Senduser, SU for short, lets you route network messages to
  803. specific users rather than to nodes. For example, to send a
  804. message to user MARK, no matter what machine he is currently
  805. using, just type
  806.  
  807.     SU MARK "Hello there, Mark"
  808.     
  809. SU will automatically determine where Mark is logged in, and
  810. get the message to him. 
  811.  
  812. Note that you can send messages to more than one user. For example,
  813. to send a message to MARK, JON and CAROLYN, type
  814.  
  815.     SU MARK,JON,CAROLYN "Hello ladies and gentlemen!"
  816.  
  817.                           --- DELAY ---
  818.  
  819. If you're running your network software from your computer's
  820. AUTOEXEC.BAT file, you may have noticed that some servers on the
  821. net may not respond to your first attempt to log on. In fact,
  822. sometimes you may not even be able to log on the first time to a
  823. server that's running on the computer you're using.
  824.  
  825. Usually this is due to the fact that LANtastic servers broadcast
  826. their existance on the net only every few seconds. If your
  827. computer comes up between ID broadcasts, it will not see a given
  828. server until the next time its ID is broadcast.
  829.  
  830. The WAITFOR utility gets around this problem by simply waiting
  831. until all the specified servers are available -- but what if you
  832. don't know in advance which servers are going to be available?
  833.  
  834. DELAY provides an easy answer. Its formal syntax is:
  835.  
  836. DELAY <time> [<message>] [/HELP]
  837.  
  838. You can specify any delay time from 0 to 32768 seconds. The optional
  839. <message> will be displayed on the screen before the delay begins.
  840. The /HELP argument displays a brief summary of DELAY's instructions
  841. on the screen. Pressing the Escape key during a delay will cause
  842. the delay to be aborted, returning you to normal operation.  If you
  843. want to stop a delay and return to the command line, press Ctrl-C.
  844.  
  845. To give LANtastic time to listen for server IDs, just insert a few
  846. seconds of delay between the time you start your network software
  847. and the time you try to log in. For example, if you include the
  848. sequence 
  849.  
  850.     LANBIOS2
  851.     REDIR
  852.     SERVER
  853.     DELAY 5 Pausing to see who's out there...
  854.     LOGIN ?
  855.     
  856. in your AUTOEXEC.BAT file, your computer will pause for 5 seconds
  857. after running the LANtastic server and before attempting to log
  858. in. This should be plenty of time for all the servers on the net
  859. to identify themselves.    
  860.  
  861.                          --- LUSETUP ---
  862.                          
  863. LUSETUP allows you to change the screen colors for the pop-up
  864. programs MESSAGE and INTERCOM and the activation keys for INTERCOM
  865. and Artisoft's LANPUP (version 3.00 only!). For LUSETUP to work, you
  866. have to be in the directory that contains MESSAGE.COM and
  867. INTERCOM.COM.
  868.  
  869. To start LUSETUP, type
  870.  
  871.     LUSETUP
  872.     
  873. from the DOS command line. LUSETUP is menu driven and is fairly
  874. self explanitory. Complete instructions for changing colors and
  875. hotkeys are displayed on the screen. 
  876.  
  877. 
  878.